import java.util.Scanner;
/*
*
* 实验任务2: 存款利息计算器
背景描述： 你被要求开发一个银行卡利息计算器，该计算器能够根据用户输入的存款金额、存款期限和年利率来计算到期后的本息总额。
功能要求：
	用户需要输入初始存款金额。 用户需要选择存款期限（单位：年）。
	用户需要输入年利率（以百分比形式）（以国有四大行现行挂牌利率为准）。
	系统根据存款金额、存款期限和年利率计算到期后的本息总额。
	如果用户输入的存款金额或存款期限不是正数，或者年利率超过100%，系统应提示输入错误，并要求重新输入。
技术要求：
	使用Scanner类读取用户输入。
	使用if-else语句进行输入验证。
	使用基本数据类型double进行金额和利率的计算。
	使用循环控制语句确保用户输入有效。
	输出格式要求："存款到期后总金额为: X.XX 元." 示例输入输出：
输入： 本金: 1000
存款期限: 5
年利率: 5
输出： 存款到期后总金额为: 1276.28 元.
拓展任务（可选）：商品折扣计算器
背景描述：你被要求开发一个简单的商品折扣计算器，该计算器能够根据用户输入的商品原价和折扣率来计算折扣后的价格。
功能要求：
	用户需要输入商品的原价。
	用户需要选择折扣类型（如：无折扣、9折、85折等）。
	系统根据商品原价和折扣类型计算折扣后的价格。
	如果用户输入的原价小于0，系统应提示输入错误，并要求重新输入。
	系统应支持至少3种不同的折扣类型。
技术要求：
	使用Scanner类读取用户输入。
	使用if-else或switch语句进行折扣类型的判断。
	使用基本数据类型double进行价格计算。
	使用循环控制语句确保用户输入有效。
	输出格式要求："The discounted price is: X.XX yuan."
注意：浮点数的格式化输出，使用String.format()或System.out.printf()。
* */
public class DepositInterestCalculator {
    public static void main(String[] args) {
//        存款金额
        Scanner sc = new Scanner(System.in);
        System.out.print("本金：");
        double money = sc.nextDouble();
        while (money < 0) {
            System.out.print("本金输入错误，请重新输入");
            money = sc.nextDouble();
        }

        System.out.print("存款期限：");
        int year = sc.nextInt();
        while (year < 0) {
            System.out.print("存款期限输入错误，请重新输入");
            year = sc.nextInt();
        }

        System.out.print("年利率：");
        double rate = sc.nextDouble();
        while (rate < 0 || rate > 100) {
            System.out.print("年利率输入错误，请重新输入");
            rate = sc.nextDouble();
        }

        double interest = money * year * rate / 100;
        System.out.println("存款到期后总金额为：" + (money + interest));
    }
}
